Precise Notation for Design Patterns
نویسندگان
چکیده
LePUS is a formal, visual notation proposed for the specification of design patterns a-la GoF. It is described through the diagrams of several patterns. This article is the 1 of two, focusing on the fundamentals of LePUS. The upcoming 2 article will discuss relations between sets of entities and a PROLOG implementation. The Need for a Notation for Design Patterns Is it possible at all to give a formal specification to design patterns? Isn’t the lack of precision in their description inherent to their very nature? As suitable abstractions were not coined in English, patterns are approximated using several pages of lengthy narratives, accompanied by source code samples and incomplete diagrams depicting special cases. Yet the fuzziness of the specification of patterns is often viewed not as an unfortunate impediment but rather as a reflection of their fundamentally nebulous nature. It is inevitable, as this argument goes, that the specification language shall be imprecise, as a pattern is an abstraction that cannot be captured other than by inexact approximations and special cases. Beyond their unsound specification media, it is given that precise and coherent definitions are missing for even the most fundamental elements of design patterns, such as “inheritance” or even “class”, nonetheless language independent interpretations as needed for language independent creatures such as design patterns are intended. In the absence of a suitable specification language, the authors of the [GoF 95] catalog, like all other authors of the genre, resort to verbal narratives and case studies. Nevertheless, a careful investigation of this primary publication of design patterns reveals that much of the verbal descriptions has definite interpretations, at least in the context of a particular programming lani Available from http://www.math.tau.ac.il/~eden/bibliography.html#precise_notation_ for_design_patterns ii To be submitted to Journal of Object Oriented Programming. SIGS Publications. iii Supported in part by a grant from the German-Israeli Foundation for Scientific Research and Development (GIF) and the Israel Ministry of Science and Arts. iv Behind which stands a “quality without a name”, some add.
منابع مشابه
The Role-Based Metamodeling Language for Specifying Design Patterns
This chapter describes a UML-based pattern specification language called the role-based metamodeling language (RBML), which defines the solution domain of design patterns in terms of roles at the metamodel level. The goal of the RBML is to support the development of precise pattern specifications that can be used for the development of pattern tools. The author describes the approaches and bene...
متن کاملPrecise Visual Specification of Design Patterns
There has been substantial recent interest in captured design expertise expressed as design patterns. Prevalent descriptions of these design patterns suffer from two demerits. Firstly, they capture specific instances of pattern deployment, rather than the essential pattern itself, thus the spirit of the pattern is often lost in the superfluous details of the specific instances described. Second...
متن کاملConversation Patterns: Workshop Report
In a service-oriented architecture systems communicate by exchanging messages. Message passing provides for robust and loosely coupled interaction but it also provides less structure than traditional RPC models, which are based on a fairly rigid request-response interaction style. Instead, messages exchanged over time between a set of parties can form a multitude of conversations. An expressive...
متن کاملTowards a Mathematical Foundation For Design Patterns
We identify a compact and sufficient set of building blocks which constitute most design patterns of the GoF catalog: uniform sets of classes or functions, function clans, class hierarchies, and regularities (morphisms) thereof. The abstractions observed are manifested within a model in symbolic logic and defined in LePUS, a declarative, higher order language. LePUS formulae concisely prescribe...
متن کاملPerformance Prediction from Agent Design Patterns
We describe a technique for deriving performance models from design patterns expressed in the Uniied Modelling Language (UML) notation. Each design pattern captures a theme within the Aglets mobile agent library. Our objective is to nd a middle ground between developing performance models directly from UML, and dealing with a more constrained case based on the use of design patterns. Performanc...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007